/* ---------------------------------------------------------------------------
** server.h
**      Declares the Server class
**
** Author: Roel Postelmans
** -------------------------------------------------------------------------*/ 
#ifndef SERVER_H
#define SERVER_H

#include <thread>
#include <mutex>
#include <sys/socket.h>
#include <netinet/in.h>
#include <stdio.h>
#include <iostream>
#include <csignal> 
#include <unistd.h>
#include <string.h>
#include "package.h"
#include "buffer.h"

/*!  \class Server
         \brief De klasse server initialiseert een socket en zal vervolgens luisteren naar pakketjes, een nieuw aangekomen pakket wordt doorgegeven aan de klasse Buffer
*/
class Server {

   int sockfd,n;
   struct sockaddr_in servaddr,cliaddr;
   socklen_t len;
   int udp_port;
   Package package;
   Udp_package udp_package;
  public:
int count;
    void set_port(int port);
    void set_up();
    void listen();    
};
extern void server();

#endif